-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sgx-psw+aesmd: 2.24 -> 2.25 #353041
sgx-psw+aesmd: 2.24 -> 2.25 #353041
Conversation
Diff: <intel/linux-sgx@sgx_2.24...sgx_2.25> Changelog: <https://github.com/intel/linux-sgx/releases/tag/sgx_2.25> This diff decouples the `sgx-psw` and `sgx-sdk` builds. We only need some headers and a single tool (`sgx_edger8r`) from the base sdk in order to build `sgx-psw`. The biggest benefit here is that I can quickly iterate on `sgx-psw`, which takes just 3 min to build, vs. waiting 1+ hour to build both `sgx-sdk` and `sgx-psw`. `sgx-sdk` is also broken in an inscrutable way with 2.25 and I don't really have the patience to waste more time on it. Now I can update the only useful artifact (the `aesmd` service from `sgx-psw`) without wasting time on the sdk.
changelog says:
which sounds like a breaking change. I guess this has to wait for branch-off. |
Hey @symphorien, this package ( |
mmh my bad |
the removal of the nixos |
Changes
Update the
sgx-psw
package to the latest 2.25 release.Diff: intel/linux-sgx@sgx_2.24...sgx_2.25
Changelog: https://github.com/intel/linux-sgx/releases/tag/sgx_2.25
This diff also decouples the
sgx-psw
andsgx-sdk
builds so thatsgx-psw
no longer depends onsgx-sdk
. I discovered that we only require some headers and a single build tool (sgx_edger8r
) from the base sdk to buildsgx-psw
. The biggest benefit here is that I can quickly iterate onsgx-psw
, which takes just 3 min to build, vs. waiting 1+ hour to build bothsgx-sdk
andsgx-psw
.I attempted to update
sgx-sdk
andipp-crypto
to 2.25, but the SDK appears broken in some inscrutable ways. It builds successfully, but most of the sample enclaves segfault or return error 0x1007 (SGX_ERROR_ECALL_NOT_ALLOWED) at runtime. I don't really have the patience to waste more time on the SDK. With this diff I can now focus updates on the single, useful artifact: theaesmd
service.Quick Glossary:
sgx-psw
(Platform SoftWare) provides theaesmd
service (Architecture Enclave Service Manager Daemon), which simplifies running enclaves and getting remote attestation quotes.Testing:
These changes were tested on an SGX-enabled Azure gen2 VM (DCSv3) running NixOS.
Run against real SGX hardware
Make sure you're running on a recent x86-64 Intel CPU, against a somewhat recent kernel with the in-tree kernel SGX driver (any NixOS config in the last few years should cover this).
Check the hardware and kernel setup:
In your NixOS
configuration.nix
, add something like:After a
nixos-rebuild switch
, check that the devices are configured and theaesmd
service is running:Run a test enclave that exercises remote attestation: